Skip to content

Conversation

@brownbaerchen
Copy link
Contributor

Thibaut and I noticed earlier that in qmat you can use underscores or dashes in the names of preconditioners, but in pySDC only dashes lead to update of the preconditioner coefficients between iterations. Can lead to some difficult to find bugs because there is no indication that something has gone wrong.

This is a simple fix so that MIN-SR-FLEX and MIN_SR_FLEX now both work the same.

@tlunet
Copy link
Member

tlunet commented Aug 6, 2025

Good idea, but you can make that qd_type-independent, using the _K_DEPENDENT attribute from the QDeltaGenerator class :

if self.generator._K_DEPENDENT:
    self.QI = self.get_Qdelta_implicit(qd_type=self.generator.__class__.__name__, k=k)

... I think (to be tested). It's not the cleanest way of doing it, but at least we won't have to change it for other variable preconditionners.

@tlunet
Copy link
Member

tlunet commented Aug 6, 2025

Oh, wait ... the generator attribute is used for both implicit and explicit terms ! This has to be corrected

@tlunet
Copy link
Member

tlunet commented Aug 6, 2025

Suggestion : instead of having only one generator attribute, put instead a genQI and genQE attribute, that are used separately for the implicit and explicit QDelta matrices. And the setupGenerator must be quickly adapted to allow that

@pancetta
Copy link
Member

pancetta commented Aug 7, 2025

Are we happy here?

@tlunet
Copy link
Member

tlunet commented Aug 7, 2025

Yes 😄

@pancetta pancetta merged commit 495d5a5 into Parallel-in-Time:master Aug 7, 2025
47 checks passed
@brownbaerchen brownbaerchen deleted the flex branch August 7, 2025 14:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants